""" 
    How to run this test:
        python -m test.UseCase_ModelTrainingPage
"""

import tkinter as tk
from tkinter import ttk
import sys

from ui.BasePage import BasePage  # 假设BasePage在ui/BasePage.py中
# 导入目标页面类（以ModelTrainingPage为例，替换为实际要测试的页面）
from ui.ModelTrainingPage import ModelTrainingPage  # 假设页面在model_training_page.py中

class TestApp(tk.Tk):
    """测试应用类，模拟主应用环境"""
    def __init__(self):
        super().__init__()
        self.title("页面测试 - 模型训练")
        self.geometry("800x600")
        
        # 模拟主应用的controller接口
        self.pages = {}
        
        # 创建主框架
        self.main_frame = ttk.Frame(self)
        self.main_frame.pack(fill=tk.BOTH, expand=True)
        
        # 直接加载目标页面
        self.load_target_page()
    
    def load_target_page(self):
        """加载要测试的目标页面"""
        # 这里以ModelTrainingPage为例，可替换为其他页面（如DataLoadingPage）
        self.target_page = ModelTrainingPage(self.main_frame, self)
        self.target_page.frame.pack(fill=tk.BOTH, expand=True)
    
    def show_page(self, page_name):
        """模拟主应用的页面切换方法（测试时可忽略）"""
        print(f"模拟切换到页面: {page_name}")

def run_test():
    """运行页面测试"""
    app = TestApp()
    app.mainloop()

if __name__ == "__main__":
    run_test()